/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.quickorm.sample.dao.support;

import java.sql.SQLException;
import java.util.List;

/**
 *
 * @author aaa
 */
public interface BaseDao {

    /**
     * 根据ID得到实体
     * @param id ID
     * @return 
     */
    public <T> T get(Class<T> entityClass, Object id);

    /**
     * 保存实体对象
     * @param t 实体对象
     * @return
     * @throws SQLException 
     */
    public void save(Object t);

    /**
     * 保存实体对象列表
     * @param tList 
     */
    public void saveBatch(List tList);

    /**
     * 更新实体数据
     * @param t 实体对象
     * @return
     * @throws SQLException 
     */
    public void update(Object t);

    /**
     * 根据主键ID删除数据
     * @param id 主键ID
     * @return
     * @throws SQLException 
     */
    public <T> void delete(Class<T> entityClass, Object id);

    //得到所有实体列表
    public <T> List<T> getList(Class<T> entityClass);
}
